1. Technical Field of the Invention
The present invention relates, in general terms, to a system and method for adding a new service to a computer-based telephone integration system, and in particular to a system and method of self-registering objects for creating telephone services within a computer telephony system.
2. Background and Objects of the Invention
Current computer telephony integration (CTI) systems provide various telephone services to a caller based upon information pertaining thereto. For instance, the telephone service provided to a caller may vary depending upon the time or date of the call, the direct inward dialing (DID) number, or the automatic number identification (ANI). One challenge in providing a number of different telephone services pertains to the fact that occasionally new or updated telephone services need to be added to the CTI system. For one type of CTI system, definitions for all of the telephone services are maintained in a single executable file. Consequently, the CTI system must be temporarily shut down in order to substitute a new executable file (having new or updated telephone services) for the old executable file.
A second type of CTI system maintains the behavior of services in a storage medium which contains a file for each behavior in a non-procedural language. Although this system may be updated more easily than the first type of telephone service, this second type of telephone service is noticeably slower than systems which employ service description modules written in a procedural language. As a result, there is a need for efficiently operating a computer-based telephone integration system to which new or updated services may be easily added.
It is an object of the present invention to provide a CTI system in which new or updated telephone services may be added without temporarily shutting down the CTI system.
It is another object of the present invention to provide such a CTI system which employs object inheritance and late binding in adding new telephone services.